import { debounce } from '@/utils/utils.js'
import BackTop from "@/components/content/backTop/BackTop.vue"
import { BACK_POSITION } from "@/utils/const.js"
// 混入操作
// 对外导出混入的方法

export const itemListenerMixin = {
  // components/computed
  // 方法的混入操作 先把节流操作写好 然后进行节流的操作
  data() {
    return {
      itemImgListener: null,
      refresh: null,
    }
  },
  mounted() {
    this.refresh = debounce(this.$refs.scroll.refresh, 500)
    this.itemImgListener = () => { // 3. 监听item中的图片加载完成
      this.refresh()
    }
    // 这里使用时间总线进行操作
    this.$bus.$on('itemImageLoad', this.itemImgListener)
    // console.log('Mixin');
    // console.log('我是混入的东西');
  }
}

export const backTopMixin = {
  data() {
    return {
      isShowBackTop: false,
    }
  },
  components: {
    BackTop,
  },
  mounted() {
    // 开始刷新高度 重新计算页面高度来户撒新操作
    //  console.log(111)
  },
  methods: {
    backClick() {
      // this.$refs.scroll.scroll.scrollTo(0, 0, 500)
      this.$refs.scroll.scrollTo(0, 0, 500)
    },
    ListenerShowBackTop(position) {
      this.isShowBackTop = -position.y > BACK_POSITION ? true : false;
    }
  }
}
